Skip to content

Patch pprint to make pytest diffs nicer for big objects#92

Merged
samuelcolvin merged 13 commits intosamuelcolvin:mainfrom
alexmojaki:pprint
Aug 12, 2024
Merged

Patch pprint to make pytest diffs nicer for big objects#92
samuelcolvin merged 13 commits intosamuelcolvin:mainfrom
alexmojaki:pprint

Conversation

@alexmojaki
Copy link
Copy Markdown
Contributor

Replaces alexmojaki#1

Closes #73

@codecov
Copy link
Copy Markdown

codecov Bot commented Nov 14, 2023

Codecov Report

Merging #92 (f76edaa) into main (78a9922) will not change coverage.
The diff coverage is 100.00%.

Additional details and impacted files
@@            Coverage Diff            @@
##              main       #92   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files           12        12           
  Lines          814       822    +8     
  Branches       150       153    +3     
=========================================
+ Hits           814       822    +8     
Files Coverage Δ
dirty_equals/_base.py 100.00% <100.00%> (ø)

Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 78a9922...f76edaa. Read the comment docs.

@alexmojaki
Copy link
Copy Markdown
Contributor Author

ready to review

@samuelcolvin
Copy link
Copy Markdown
Owner

LGTM, please can you add an screenshot or similar example to PR showing how this improves the display?

@alexmojaki
Copy link
Copy Markdown
Contributor Author

As in the original issue, before:

E       AssertionError: assert (['ddsdsdads ', 'sfafsdsd', 'dfds sdfsef', 'sfdssdf ', 'sdsadfs', 'dsfsdfsd', 'cfdfdfd', 'dgffgfdgfd', 'fdsfsdgfsdgsf'], 1, 2, 3, 4, 5, 6, 7, 8, 9) == (['ddsdsdads ', 'sfafsdsd', 'dfds sdfsef', 'sfdssdf ', 'sdsadfs', 'dsfsdfsd', 'cfdfdfd', 'dgffgfdgfd', 'fdsfsdgfsdgsf'], 1, 2, 3, 4, 5, 6, 7, 8, 0)
E         At index 9 diff: 9 != 0
E         Full diff:
E           (
E         -  ['ddsdsdads ', 'sfafsdsd', 'dfds sdfsef', 'sfdssdf ', 'sdsadfs', 'dsfsdfsd', 'cfdfdfd', 'dgffgfdgfd', 'fdsfsdgfsdgsf'],
E         +  ['ddsdsdads ',
E         +   'sfafsdsd',
E         +   'dfds sdfsef',
E         +   'sfdssdf ',
E         +   'sdsadfs',
E         +   'dsfsdfsd',
E         +   'cfdfdfd',
E         +   'dgffgfdgfd',
E         +   'fdsfsdgfsdgsf'],
E            1,
E            2,
E            3,
E            4,
E            5,
E            6,
E            7,
E            8,
E         -  0,
E         +  9,
E           )

After:

E       AssertionError: assert (['ddsdsdads ', 'sfafsdsd', 'dfds sdfsef', 'sfdssdf ', 'sdsadfs', 'dsfsdfsd', 'cfdfdfd', 'dgffgfdgfd', 'fdsfsdgfsdgsf'], 1, 2, 3, 4, 5, 6, 7, 8, 9) == (['ddsdsdads ', 'sfafsdsd', 'dfds sdfsef', 'sfdssdf ', 'sdsadfs', 'dsfsdfsd', 'cfdfdfd', 'dgffgfdgfd', 'fdsfsdgfsdgsf'], 1, 2, 3, 4, 5, 6, 7, 8, 0)
E         At index 9 diff: 9 != 0
E         Full diff:
E           (
E            ['ddsdsdads ',
E             'sfafsdsd',
E             'dfds sdfsef',
E             'sfdssdf ',
E             'sdsadfs',
E             'dsfsdfsd',
E             'cfdfdfd',
E             'dgffgfdgfd',
E             'fdsfsdgfsdgsf'],
E            1,
E            2,
E            3,
E            4,
E            5,
E            6,
E            7,
E            8,
E         -  0,
E         +  9,
E           )

@alexmojaki
Copy link
Copy Markdown
Contributor Author

This problem threw me off today, please can this be merged?

@samuelcolvin samuelcolvin merged commit 2ce5fab into samuelcolvin:main Aug 12, 2024
@samuelcolvin
Copy link
Copy Markdown
Owner

thanks so much.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

objects with multiline repr cause pytest to print a diff

2 participants